#ifndef CHESSMAP
#define CHESSMAP

struct checker {
	int kind;	//0 empty,1 obstacle,2 basground,3 wuma,4 youma,5 archer,6 wait for set
	int No;		//Number in class
	int time;	//left cd
	int player;

	checker() {
		kind = 0;
		No = -1;
		time = -1;
		player = -1;
	}
	checker(int _kind, int _time = -1, int _No = -1, int _player=-1) {
		kind = _kind;
		time = _time;
		No = _No;
		player = _player;
	}
};

struct Node {
	int x;
	int y;
	int value;
	int G;
	int H;
	int lst;	//null 0,openlist 1,closelist 2
	Node* father;

	Node() {
		x = -1;
		y = -1;
		value = -1;
		G = -1;
		H = -1;
		lst = 0;
		father = nullptr;
	};
	Node(int _x, int _y, int _G, int _H, Node* _father,int _lst=0) {
		x = _x;
		y = _y;
		G = _G;
		H = _H;
		value = _G+_H;
		father = _father;
		lst = _lst;
	}
};

#endif // !1